In-kernel web server
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
An in-kernel web server is an unlimited HTTP server that runs in kernel space or equivalent. It is also known as "accelerator".
Contents
• Benefits
• See also
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Benefits
• Performance: the path taken by data from a source device (i.e. a disk) to a destination device (i.e. a NIC). Proper asynchronous zero-copy interfaces would make this available from user-space.
• Scalability: with respect to number of simultaneous clients. Event notification of comparable scalability seems unlikely in user-spaceref-11.
Drawbacks
• Security: Kernel processes run with unlimited privileges.
• Portability. Every kernel needs a specific implementation route.
• Reliability. Failure in the webserver may crash the OS.
Implementations
• HP-UX: NSAhttp (NSA is an acronym for Network Server Accelerator)
• Mesibo In-kernel real-time messaging server
• SPIN: http
• OpenVMS: WASD.trap
See also
References
• endnote-1^1 CITI_TR_00-4
• High-Performance Memory-Based Web Servers: Kernel and User-Space Performance. Philippe Joubert, Robert B. King, Rich Neves, Mark Russinovich, John M. Tracey. IBM. T. J. Watson Research Center